<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>06函数</title>
</head>
<body>
<script>
    //1.通过function关键之类定义函数
    function f1 (){
        console.log('f1');
    }
    f1();
    //2.带参数的函数
    function f2(n){
        console.log('今日星期一'+n);
    }
    f2('中午吃什么?');
    f2(666);
    f2(false);
    //3.形参与实参的个数问题
    function f3(x,y){
        console.log(x+y);
    }
    f3(3,10);
    f3(3);//未被赋值的形参值为undefined
    f3(3,4,5);///多余的实参会被舍弃

    //4.arguments用来保存调用函数时传入的实参,可以看到实参的个数与值
    function f4(){
        console.log(arguments);
    }
    f4(50);
    f4(50,60);
    f4(50,60,70);
    //5.函数的返回值
    function  f5 (a,b){
        return a+b;
    }
    var res = f5(3,4);
    console.log(res);
    console.log(f5(3,4));

    //函数的第二种声明方式
    //将函数整体交给变量f6来保存,调用时使用变量名调用即可
    let f6 = function (){
        console.log(f6);
    }
    console.log(typeof f6);
    console.log(f6);
    f6();

    //箭头函数
    const f7 = (n)=>{
        console.log('箭头函数'+n);
    }
    f7('你好');

//     三种定义方法的方式:
//     function 方法名 (参数列表) {方法体}
//     let 方法名 = function (参数列表) {方法体}
//     const 方法名 = (参数列表) {方法体}
</script>
</body>
</html>